home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nightshift Sound & Vision
/
Nightshift - Sound & Vision.iso
/
programs
/
sound
/
hipplayer
/
hippoplayer.doc
< prev
next >
Wrap
Text File
|
1995-05-19
|
47KB
|
1,347 lines
******************************************************************************
*** HippoPlayer ***
Programmed by K-P Koljonen
** Hippopotamus Design **
Copyright ⌐ 1994-1995 K-P Koljonen
** SHAREWARE **
******************************************************************************
HippoPlayer (HiP) is a multiformat module player for the Amiga. It works
perfectly under Kickstart 1.2 and has all the same and even more features
than the players requiring Kick2.0+ to run.
One main reason why I started making this program was that there were no
good Kick1.3 compatible players around, or I didn't know of one. The other
reason was that my good friend Jarno Paananen (Guru/Sahara Surfers) made a
replay routine for Screamtracker ]I[ modules.
The aim was to make a good module player that works on every Amiga
configuration and has lot's of USEFUL features. To achieve speed, little
size and memory usage, HiP is 100% assembler.
"Newcomers will run screaming away", said Nemesis1.
At first HiP may seem complicated. There's no familiar tapedeck symbols,
only some bits of text scattered around. Learn to use HiP, it should be
worth the effort :)...
HiP has good support for Screamtracker ]I[, Fasttracker 1 & 2, Taketracker,
and Multitracker modules (from here onwards referred as PS3Ms), meaning
that you can listen them with a 68000 Amiga with listenable quality. All
are played by the famous replayer by Guru. HiP was the second program to
use the PS3M-routines after Guru's own player.
Some features:
╖ Screamtracker ]I[, Fasttracker 1 & 2, Taketracker, Multitracker, 1 to 32ch
╖ SID-emulation by Hσkan Sundell & Ron Birk (works even on kick1.2)
╖ TFMX-modules, normal and the seven channel ones
╖ A bunch of 4-8 channel sample & synth music formats
╖ Easy to use, nice 3D-interface
╖ Keyboard control
╖ AppWindow
╖ ARexx
╖ Public screen support
╖ Internal multitasking
╖ Loads and decompresses XPK, FImp, PowerPacker, LhA, LZX and Zip files
╖ Tested on:
A500/000, kickstart 1.2, 0.5+0.5m memory
A1200/030, kickstart 3.0/1.3, 2+4m memory (with enforcer)
HippoPlayer was/is developed on:
- v1.00-v1.25 A500/010, kickstart 1.3/3.1, 1+2M memory, HD
- v1.27-v1.40 A1200/020, kickstart 3.0, 2+0M memory, HD
- v2.00-v?.?? A1200/030, kickstart 3.0, 2+4M memory, HD
******************************************************************************
* *** Registration *** *
******************************************************************************
HippoPlayer is shareware and copyright ⌐ 1994-95 K-P Koljonen.
If you like using HiP and would like to encourage me to continue developing
and help me as well (as I'm a poor student :), you should consider
registering.
To register, send a disk and some money (30-40 FIM or 7-9 USD or about
equivalent amount of notes of other currencies or eurocheques) to my
address found at the bottom of this doc. Remember to mention your address!
You will get the disk back with the latest version of HiP and a keyfile,
which you MUST NOT SPREAD. It is for your own use only. This keyfile will
work with possible future versions too.
Registering by e-mail is also possible. Send the money by normal mail and
I will mail you the keyfile.
There's no difference between registered and unregistered version!
Support quality software, register.
Distribution
------------
HippoPlayer can be freely distributed as long as all files are included
unaltered. Not for commercial use without a permission from the author.
******************************************************************************
* *** Requirements *** *
******************************************************************************
Any Amiga with some memory and Kickstart 1.2 or higher. Reqtools.library
of any version will be needed for the requesters. There is kick1.3
reqtools.library included in the archive.
In order to... you need...
------------------------------------------------------------------
Load XPK files xpkmaster.library and some sublibs
Load PowerPacker files powerpacker.library
Load lha, lzx and zip files to look at 'Archivers'
Play SID files PlaySID.library
Play 4ch MED modules medplayer.library v2+
Play 5-8ch MED modules octaplayer.library v2+
All libraries must be copied into Libs: drawer.
reqtools.library and powerpacker.library by Nico Franτois.
xpkmaster.library by Urban Dominik Mⁿller (?).
PlaySID.library by Per Hσkan Sundell & Ron Birk.
medplayer.library and octaplayer.library by Teijo Kinnunen.
Installation
------------
Copy HiP and the info-file wherever you keep your tools. There are two
4-color and two MagicWB icons to choose from. Also copy reqtools.library
in libs: if it's not there already.
Copy HippoPlayer.Group into S: or define the location in Prefs/Player
group later.
The use of HiP-script is described in 'Archivers'.
******************************************************************************
* *** Music formats *** *
******************************************************************************
Here's a list of the music formats HippoPlayer can play and what functions
they support. Also the authors of the replayers are listed.
Stop/Continue = 1 - The music can be stopped and continued.
Multiple songs = 2 - Modules can have more than one song.
Volume = 3 - Volume can be controlled.
End detect = 4 - Songend can be detected.
Forward/backward = 5 - You can jump forwards and backwards in the song.
Replayer 12345 Author
--------------------------------------------------------------------
[** Built-in replayers **]
David Whittaker xx---* David Whittaker
Delta Music v2.0 x-x--* Bent Nielsen
Fred xx---* Frederic Hahn & JC
Maniacs of Noise xxx--* Maniacs of Noise
Mark II x----* Cachet Software
MED 4-8ch (player libraries) xx-xx Teijo Kinnunen
Music Assembler x-x--* Oscar Giesen & Marco Swagerman
Protracker xxxxx K-P Koljonen
PS3M x-xxx Jarno Paananen
SID (player library) xx--x Hσkan Sundell & Ron Birk
SIDMon v1.0 x----* Reiner van Vliet
Sonic Arranger -x---* Carsten Schlote
[** Replayers in player group file **]
BP SoundMon v2.0 x-xxx Brian Postma
BP SoundMon v3.0 (v2.2?) x-xxx Brian Postma
Future Composer v1.0-v1.4 x-xx- SuperSero (of the Superions)
JamCracker x--x- M. Gemmel
Oktalyzer --xx- Armin Sander
TFMX xxxxx Chris Hⁿlsbeck
TFMX 7ch xxxxx Chris Hⁿlsbeck & Jochen Hippel
The Player 6.1A x-x-- Jarno Paananen
The modules of formats marked with '*' have the replay code inside the
module itself. I can't guarantee will they work or not. This is also the
reason why they are not in the player group file (no replay code).
Most of the formats included are here just because I have some modules of
them and I like to play them with HiP. :)
Player group (See Prefs)
------------
Player group (HippoPlayer.Group) is a file consisting of above mentioned
replayers. The reason for this is that by moving seldom used replayers
into a separate file memory usage is reduced by 25kB. Not that much, you
think. But maybe just enough to prevent some actions from happening on low
memory systems/situations.
Loading files
-------------
Normally all modules will be loaded in CHIP. SID-, Oktalyzer- and PS3M-
modules and TFMX song data will be loaded in FAST RAM if possible.
All compressed files will be loaded in CHIP. However, it's possible to
uncompress some kilobytes from the beginning of an XPKed file, and check if
it is one of the above or a PT module that is to be played with PS3M or
with fastram replayer.
Advantages of loading to FAST:
FAST RAM is much faster than CHIP, so mixing can be done faster.
CHIP RAM is saved if the module can or should be loaded in FAST.
LhA, LZX and Zip files can be checked and will be loaded in FAST if
necessary.
Protracker
-----------
The most popular music format on the Amiga. HiP features my own Protracker
play routine.
- Multisong modules
There are some modules around with several songs separated by the B
command. HiP allows you to play these kind of modules correctly. Just use
the 'PS' and 'NS' gadgets (or the respective keys) to select different
songs. The only player that supports this feature, by the way :).
- Fast ram player
This player can play PT modules from FAST RAM using only 1024 bytes of CHIP
RAM. Useful for very big modules. CPU usage on my A1200/030/28Mhz is
about 2-3%, and on my little brother's A500/000 about 15%.
TFMX
----
HiP can play both 4 and 7-channel TFMX modules, including the excellent
Turrican 2 and 3 intro tunes. A TFMX module consists of two files. They
must be named 'mdat.<name>' and 'smpl.<name>'. To play, select
'mdat.<name>'. HippoPlayer will then try to load the 'smpl.<name>' file.
The mixing rate of TFMX 7 channel replayer can be changed. The bigger
value, the better quality and bigger CPU load. If you lose some notes or
hear 'crackling' in the sound try lowering the mixing rate.
PS3M
----
(Screamtracker ]I[, Protracker, Fasttracker 1 & 2, Taketracker, Multitracker)
Jarno Paananen (Guru/Sahara Surfers) has made replayers for these. It is
able to play 1-32 voices simultaneously by mixing them through four
channels. The mixing routine is amazingly fast, even on Amiga 500 8
channel modules are very listenable. The replayer gobbles quite a bit of
memory for it's buffers, so don't be surprised.
Mixing rates can be changed. Again, the bigger value, the better quality
and bigger CPU load. Using the system friendly mode on A500 will probably
more or less jam the machine, therefore you should use the killer mode for
the best quality.
PS3M allows mixing rates higher than 28kHz, which is normally the hardware
limit. In some AGA screen modes (dblPAL, dblNTSC, atleast) mixingrates can
be upto 56kHz high. Ofcoz, this doesn't work under OCS/ECS Amigas.
Killer mode WILL cause enforcer hits! It bangs some of the interrupt
vectors. Don't use enforcer with killer mode.
These modules can and should be played from FAST RAM.
Play mode
- - - - -
Mono Play all channels on both sides.
Stereo Normal.
Surround Play some of the right side on the left and vice versa.
Real Surround About the same, but uses more memory.
14-bit stereo BEST QUALITY, biggest CPU load, largest memory usage and
lowest volume level.
SID
---
These are tunes ripped from C64 games & demos. Both normal file + icon and
one file formats are supported. The playing is done by PlaySID.library by
Hσkan Sundell and Ron Birk. Great job dudes!
*** Note! Under Kickstart 1.2/1.3 playsid.library v1.1 does not work
because it uses some Kick2.0+ functions. I have made a little patch to
bypass the problem. This patch works ONLY with lib version v1.1 and
Kick1.2/1.3.
******************************************************************************
* *** Gadgets & keyboard controls *** *
******************************************************************************
Keyboard shortcuts are bracketed. The keys work from both main window and
prefs window.
New Clear the module list, select new modules and play the first one.
Play Load and/or play selected module. If nothing selected, pop up
file requester. [RETURN/ENTER]
Cont Continue playing after stop.
Stop Stop playing.
Eject Stop playing and free current module. [TAB]
Prev Load and play previous module. [K]
Next Load and play next module. [L]
PS Play previous song. [ARROW LEFT]
NS Play next song. [ARROW RIGHT]
< Backward, jump to previous pattern. [,]
> Forward, jump to next pattern. [.]
Add Add modules to the end of the list, pop up the file requester. [A]
When adding files to the list you can also add directories.
With Kick2.0+ HiP will perform a recursive directory scan adding all
files in dir to the list. With Kick1.2/1.3 only one sub dir is added.
Del Delete selected module from the list. [BACKSPACE]
Clr Clear the list. [D]
Horizontal slider
Volume controller. [B][N]
? Enter the info window. [HELP]
Samplenames Displays sample names of MODs, S3Ms, XMs, FTMs and
MTMs.
SID-info Information about SID-modules.
Sample names or SID-info can also be invoked by
pressing left mousebutton on the leftmost third
of the name/type box or the 'I' key. (When there's
no info available the info window will be opened.)
Help Description of gadgets & keyboard shortcuts.
About About HiP...
Exit Hmm..
Pre Pop up the prefs window. You can also close it with this button.
Mo Move the chosen module. [M]
Removes the module from list allowing you to move around.
To insert it back press Mo again or Play (or the keys).
In Insert modules after the selected module. [I]
This is almost the same as 'Add'.
In + right mousebutton [S]
Sort list alphabetically. With lot's of files this may be a
bit slow (bubble sort).
Lp Load module program. [P]
Sp Save module program. [W]
The leftmost propgadget
Scroll module list.
Windowclose-button [ESC]
Close all windows except requesters and exit.
** Other keys **
ARROW UP Select previous module.
ARROW DOWN Select next module.
SPACE Toggle play/stop.
*, (next to RETURN) Randomize and play a module.
7,8,9 Show: time-pos/len-song number, clock-free mem, module name.
Z Toggles selected scope.
F1-F10 Load & play a module or a module prorgram.
`~ (next to 1) Zip window (also shows when hidden).
lamiga-lshift-control + h
Hides HiP and shows when pressed again.
*** Number pad ***
[ ] / * [ = del, ] = move, / = insert, * = play random
7 8 9 - 7 = play previous, 8 = select previous, 9 = play next, - = vol down
4 5 6 + 4 = prev song, 5 = stop/cont, 6 = next song, + = vol up
1 2 3 E 1 = rewind, 2 = select next, 3 = fast forward, enter = play
0 0 . E 0 = add files, . = load program, enter = play
*** Keyboard note ***
Press lamiga-lshift-control-<key> to use the HiP-keys WITHOUT first
activating the window. This is one of the two ways (the other is ARexx) to
control HiP when it is hidden! Pressing zip window this way will bring the
window to front and activate it.
*** File requester note ***
HiP uses the great reqtools-requesters. To select multiple files click
files with shift pressed! You can also select directories when 'Add'ing or
'In'serting.
Filebox
-------
Here you can see the module list. You can select a module by pressing the
left mousebutton on it or by pressing arrows up and down. The selection
bar will be kept visible. If 'Center name' is set, it will be centered.
Right mousebutton
-----------------
Pressing the right mousebutton or the respective key will shrink the window
so that only the titlebar will be shown. Press again on the activated
window to expand.
If you somehow lose the window, just load the program again. If there
already was one HippoPlayer running, it's window will be popped to front
and expanded. Also pressing lamiga-lshift-control+`~ will pop the window
to front.
******************************************************************************
* *** Prefsá**** *
******************************************************************************
Here you can configure HippoPlayer by using the gadgets & buttons. You can
invoke a multiple choice requester by pressing right mousebutton on the
following gadgets:
╖ Play
╖ Show
╖ PS3M mode 2
╖ Type of scope
The requesters are somewhat different than in most other programs because I
use only reqtools.library.
Play
----
List repeatedly Play module list over and over.
List once Play list once stop.
Module repeatedly Play one module over and over.
Module once Play one module once and stop.
Modules in random order
Play modules in random order.
When playing has started, same module will not be played twice
unless all modules have been played first.
'Play' affects the replayers where the end of the song can be detected
from.
Show (titlebar information)
----
Time, pos/len, song Show playing time, song position/length and
song number/max song (#n/n) depending of what kind
of a module is being played.
Clock, free memory Show clock (24h) and free CHIP and FAST in kilobytes.
Module name Show module name.
Filter control
--------------
Filter controlled by module, filter forced off or on.
Module directory
----------------
Here you can enter your module directory or select it by pressing '?'.
Program directory
-----------------
Same as above but for saving module programs.
Screen
------
Select a public screen. All HiP's windows and requesters will then be
opened on the defined screen. If the screen is not available, default
screen will be used (usually Workbench).
Protracker tempo
----------------
Enable or disable Protracker tempo command. Use on old modules that use
speeds higher than $1F.
PT replayer
-----------
Normal: Use normal Protracker replayer to play modules from CHIP RAM.
Fastram: Play PT modules from FAST RAM.
PS3M: Use Guru's PS3M to play modules from CHIP or FAST.
This way you can use those neat modes, eg listen Protracker
modules with real surround.
Scopes
------
Select one of the scopes by clicking the type gadget and the bar gadget.
The 'Scope on/off' button or 'z' key will start it up. You can close a
scope by closing it's window or clicking the gadget again.
These are for Protracker-modules only:
Quadrascope (& bars)
- This is just like the one in Protracker. Channel order: 1,2,3,4.
Hipposcope (& bars)
- Couldn't invent a better name.. Bass-sounds look nice with this one.
Channel order: 1,2,3,4.
Frequency analyzer (& bars)
- This one's more processor intensive. There is one for the left and the
right side. It is supposed to display frequencies while not using
period values. This is not FFT, but is based on Guru's strange idea...
Bass-sounds are on the left and treble-sounds on the right.
Bar channel order: 1,4,2,3.
Patternscope
- Protracker-emulator... Shows pattern data, four fake VU-meters and four
tiny period boxes.
Channels: 1,2,3,4.
Bars
- These will try to visualize the volume and the period of each channel.
The vertical position represents sample period and the width sample volume.
There are almost the same scopes for PS3M: Quadrascope (stereoscope,
actually), hipposcope and frequency analyzer. No bars.
The scopes will need some kilobytes of memory for buffers. They are run
with priority of -30 so that they won't interfere with anything important.
TFMX rate
---------
Mixing rate for the 7-channel TFMX replayer.
Timeout
-------
Set playing time (mins:secs). Disabled in the leftmost position. Timeout
can affect all modules or only those which the end can't be detected from.
You can select this by pressing 'Timeout'.
Example: Play Protracker-modules until they end and PSIDs for, say 3
minutes. Or you can play all kinds of modules for only 30 secs (intro scan
:).
Filebox size
------------
Define the number of files showed simultaneously in the main window.
Minimum is 3 and maximum is 50 (will need a BIG screen). If the value is
too big for the current screen, it will be truncated.
Archivers (LhA... LZX... Zip...)
---------
HiP can decompress and play LhA, LZX and Zip files. You need to specify a
path, a command and options for each.
LhA, LZX and Zip archives will be extracted into a file right after '>'
(for LhA and Zip this is output redirection). The %s means the name of the
archive to be opened. The output file can be placed somewhere else than in
RAM: if you don't have enough memory.
You need: LhA, LZX or UnZip, according to what kind of packed files you have
(be sure they really are where you defined them to be),
and 'Run' command in C:. LZX also needs 'C:Execute' and 'S:SPAT'.
These kind of files are identified by checking the name. LhA files have
suffix '.lzh' or '.lha', LZX files '.lzx' and zip files '.zip'.
** Hint **
- Archived files may be packed with XPK, FImp or Powerpacker. For example,
you could use xpkDLTA to encipher a module and then LhA it. Gives very
good compression of sound related data.
** LhA hint **
- You can store both TFMX mdat. and smpl. files in one archive! Just
remember that the files MUST BE unpacked before archiving and mdat file
MUST BE added into archive first!
Archiver commands
-----------------
LhA -> c:lha >T:virtahepo p -qMNIQw "%s"
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
c:lha the program lha and complete path
>RAM:virtahepo A file where decompressed data will be stored.
Can be placed for example on HD (>dh1:temp/rhinocerus)
p Print files to stdout, in other words in file after the '>'.
-qMNIQw q be quiet
M no autoshow files
N no progress indicator
I ignore LHAOPTS variable
Qw disable wildcards
"%s" The %s will be replaced with archive name.
LZX -> C:execute s:HiP-script "%s" T:HiP-temp c:lzx ;>T:HiP-temp/virtahepo
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
This is a tricky one. Thanks to Gavin Hamill for the illuminating script
(which HiP-script is based on). 'S:HiP-script' will make a temp dir
'T:HiP-temp' and extract the LZX archive there (c:lzx is the full path &
name for lzx). Then the file that was extracted is renamed to 'virtahepo'
so that HiP can recognize and load it. Note that the
';>T:HiP-temp/virtahepo' statement in the commandline is there just to show
HiP where to look for the file. Also note that the temp dir is not deleted
afterwards.
Change 'c:lzx' to where lzx resides in your system! Same thing for
's:HiP-script'.
'S:SPAT' script file is required!
If you want the temp dir somewhere else than T:, change all 'T:HiP-temp's
in the commandline.
Example to extract LZX archives to HD:
C:execute s:HiP-script "%s" dh1:temp/dung ;>dh1:temp/dung/virtahepo
Zip -> C:unzip >T:virtahepo -cqq "%s"
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
-cqq c extract files to stdout
qq be very quiet
You can also use other programs for uncompressing.
Example for LhA: c:lhx >RAM:virtahepo p -qMNQw "%s"
PS3M settings
-------------
This replayer (by Guru/S2) can play S3Ms, XMs, FTMs, MODs and MTMs.
State/buf (System state / buffer size):
Humble Allow multitasking when playing. Playing process will use
priority of -3, in other words it will run with the
leftover CPU cycles of the system. With big mixing
buffers plays fine and doesn't jam the system
(on my 030/28Mhz that is :).
Friendly Same as Humble but with priority +3. PS3M will get almost
total control of the CPU if needed.
Killer Disable system and stop most of the DMA to get the best
quality. The blue flickering represents free CPU time.
Stop playing by pressing mousebuttons. No enforcer!
Buffer 4kB, 8kB, 16kB, 32kB, 64kB mixing buffer size.
Smaller buffer gives faster response, but decreases the
"backup" buffer possibly causing more "skipping".
Play mode: Playing modes (see the PS3M doc for more info, or just
try them out)
Volume boost:
Makes the sound clearer and louder (use when 8 or more channels)
You will hear the change almost immediately.
Mrate (mixing rate):
Mixing rate in kHz.
Fade volume
-----------
This will cause those replayers that support volume to fade music in and
out.
Hotkeys
-------
Enable/disable lamiga-lshift-control-<key> keys. This is for preventing
collisions with other programs that may be using the same key combination.
Doubleclick
-----------
When enabled, a module can be loaded and played by doubleclicking on it.
Center name
-----------
When enabled, chosen module will be centered in the filebox.
XPK identify
------------
When on, all XPKed files will be checked if they should be loaded in FAST
memory. You should set this if you listen to modules played by PS3M.
Continue on error
-----------------
Errors that occur while loading will be ignored, file will be skipped and
the next one will be loaded. Beware! You must have at least ONE module in
the list that can be loaded! Otherwise HiP may be left stuck in a loop
trying to load modules and always failing.
Doublebuffering
---------------
Normally when loading a module the one that is playing is ejected. With
this button you can force HiP to play the current module and load the next
one at the same time. Useful for floppy users, no delays between playing.
If there's not enough memory to hold two mods at the same time the one that
is played will be ejected before loading.
Nasty audio
-----------
Select allocation priority of the audio channels. When on, no program
except HiP can use the channels. PS3M uses maximum priority at all times.
VBlank timer
------------
Select timing method to be used for playing: VBlank or CIA timer.
Use this switch if you don't want HiP to use one of the two CIAA timers.
VBlank plays with wrong speed on non-50Hz screens.
This switch has no effect on the following: PS3M, SID, Sonic Arranger,
TFMX, TFMX 7c, MED, The Player 6.0a. They use their own way of timing that
may cause serial stops. Atleast PS3M does that.
Tempo will be disabled when playing PT mods with VBlank timer.
Priority
--------
Select a priority for HiP's processes: -1, 0, +1. All excluding
HippoScope are affected.
Startup
-------
When enabled, HiP will start playing immediately on startup. The module or
the program to be played can be chosen by clicking the 'Startup' gadget.
Function keys
-------------
You can install a module or a module program for each of the function keys
(F1-F10) by clicking this gadget. Then when you press a fkey, the
corresponding module program or module will be loaded and played.
Player group
------------
Status: Player group loaded/not loaded.
Mode: Loading conditions
- Startup: load immediately on startup
- Demand: load when there is demand for the players
- Disable: don't load players and unload if already loaded
File: Player group file.
These can be changed from the gadgets.
Font
----
Select a 8x8 pixel font (kick2.0+ only). All fixed width and 8 pixel high
fonts will be scanned and only those that are 8x8 pixel fonts are
displayed. This thorough scan also LOADS all 8 pixel high fonts in memory.
Afterwards you should type 'avail flush' in Shell or select flushlibs from
WB's Debug menu to free all unnecessary fonts.
Save, Use, Cancel
-----------------
I guess you can guess these. If you close the prefs window it's same as
'Cancel'ling. The prefs-file will be saved in the S: directory.
******************************************************************************
* *** Command line options *** *
******************************************************************************
Add modules to the list
-----------------------
HiP <file2> <file2> ... <file16>
All the files will be added to the list and the first added one will be
played.
Load a module program
---------------------
HiP PRG <module program>
The program will be loaded and the first module will be played. If the
playmode is set as 'Modules in random order', then a random module will be
picked and played. Existing list will be cleared. (The PRG-keyword is not
necessary, but is faster in terms of disk activity.)
All filenames must be entered with full paths!
*** NOTE: You can also do these things while HiP is ALREADY running! This
allows you to use HiP as a command line module player. Eg in Directory
Opus it makes a good play button.
Hide on startup
---------------
HiP HIDE [other parameters]
HIDE makes HiP even more a command line player. It will force HiP not open
it's window. Also reqtools.library is not needed (it will be loaded later
if the window is opened). HiP can be controlled with hotkeys (if enabled)
and/or ARexx if the window is not opened.
Quit
----
HiP QUIT
If there is already one HiP running, it will be terminated.
******************************************************************************
* *** ARexx *** *
******************************************************************************
HiP has an ARexx port 'HIPPOPLAYER'. It will be initialized at startup if
RexxMaster is found running. Works (ofcourse) on Kick1.3 too. There are
some simple ARexx-examples in the ARexx-dir.
*** Note! The ARexx-interface and commands are not very thoroughly tested.
If there appears any misbehaviour, tell me please!
Parameters in [] may be omitted, parameters in <> may not!
CHOOSE <num> Choose file number <num> in list.
ADD [file] Add file [file] to list. If not specified, open
file requester.
DEL Delete chosen file from list.
CLEAR Clear list.
MOVE <num> Move chosen module after file number <num>.
INSERT <file> Insert file <file> after chosen file.
SORT Sort file list.
LOADPRG [file] Load program [file]. If not specified, open
file requester.
PLAY [file] Clear list and play file [file]. If not specified,
open file requester.
EJECT Stop playing and free current module.
STOP Stop playing.
CONT Continue playing after stop.
PLAYSONG <num> Play song number <num>.
RANDPLAY Pick a random module and play it.
FFWD Jump forwards in song.
REW Jump backwards in song.
VOLUME <vol> Set volume <vol> (0-64).
QUIT Close all windows and exit program.
ZIP <0/1> 0: small main window, 1: normal main window
HIDE <0/1> 0: hide main window, 1: show main window
PUBSCREEN <screen> Set public screen for HiP's windows & requesters.
Note that this is case sensitive.
TIMEOUT <secs> Set timeout (0-600 secs).
PS3MBOOST <value> Set PS3M volume boost (0-8).
PS3MMODE <mode> Set PS3M mode. 1: surround, 2: stereo, 3: mono,
4: real surround, 5: 14-bit stereo.
PS3MRATE <rate> Set PS3M mixing rate (5000-56000).
LOADPREFS <file> Load prefs file. Restart HiP with the new settings.
HiP only saves prefs to S:HippoPlayer.prefs, so
you have to collect them manually somewhere for
ARexx-usage.
GET <xxxx> With this command you can get different information from HiP.
The <xxxx> can be one of the following:
xxxx: result:
PLAY 0 if not playing, 1 if playing.
CFIL Number of chosen file, 0 if none chosen.
NFIL Number of files in list.
CURR Number of loaded module.
NAME Module name.
TYPE Module type.
CNAM Name of chosen file.
CSNG Current song number.
NSNG Number of songs available.
CSPO Current song position.
MSPO Maximum song position.
FNAM Full name of loaded file.
COMM Comment for loaded file.
SIZE Size of loaded file.
******************************************************************************
* *** Bugs *** *
******************************************************************************
1. Main window refresh gets perhaps even dangerously confused
when zipping window via zoomgadget while loading module/program,
saving program or sorting. One zip is allowed, two is too much,
so be careful.
******************************************************************************
* *** History *** *
******************************************************************************
Read this! Some things are not mentioned elsewhere!
v1.00 Works...
I couldn't check the bug I suspected because a friend of
mine wanted to upload the program everywhere. This bug causes
memory to get fragmented when loading XPK files.
v1.01 No major bugs left..
v1.10 ╖ Removed some small bugs here and there.
╖ A description of the gadgets in the program.
╖ Support for multisong Protracker modules.
╖ Replayer which plays S3M/FTM/MOD/MTM modules, by Guru (jee).
╖ Load/save module program.
╖ Commandline options.
╖ Four scopes.
╖ Communication between most of HiP's processes. All windows except
reqtools requesters will be closed when the main window is closed.
╖ Window positions will be saved in the prefs-file. Also the state
of the scope (on/off) will be saved.
╖ Doesn't interfere with serial transfers on slower Amigas anymore.
Exceptions are MED, TFMX, The Player.
They use their own way of timing (level 6 here I come).
╖ Works correctly on both PAL and NTSC.
╖ Behaves more intelligently with bigger fonts, eh...
╖ If playingmode is 'Random', Next/Prev will randomize a new
module instead of what they would normally do.
╖ Removed a bug in ProTracker's arpeggio.
╖ Newlook propgadgets on Kickstarts 2.0+.
╖ FutureComposer end-detect.
v1.11 ╖ Now should work on 50/60/72Hz screens correctly.
╖ New icon (less eyesore?).
╖ Filter control in Prefs.
╖ Doesn't try to open windows over screen's borders.
╖ Info window, in which an option to show samplenames.
╖ TFMX channel autodetect.
╖ New PS3M -> Mixingrate: 5-56 kHz, volumeboost: 0-8
╖ Lotsa fixes'n stuff.
v1.12 (19.7.1994)
-----------------
╖ Fixes'n stuff part 2.
╖ New scope: Frequency analyzer
╖ More stuff in info window.
╖ New formats: The Holy Noise, MED 5-8 channels.
╖ Executable size (and memory usage) reduced.
Achieved this by packing nearly all the replayers.
╖ Removed a bug that caused PT vibratos to disappear. This bug
was created when I removed the arpeggio-bug. Hmm..
╖ More informative loading phase.
╖ Enables/disables gadgets according to current replayer.
╖ New prefs design.
╖ Modulebox can now contain 8 names.
╖ Titlebar information printed with SetWindowTitles().
╖ PT modules can be played from FAST RAM.
╖ End-detect: JamCracker, Oktalyzer, SoundMon v2.0.
v1.14 (30.7.1994)
-----------------
╖ Fixed a bug in 'del' (caused a crash sometimes).
╖ Almost full keyboard control.
╖ New formats: Delta Music v2.0, Sonic Arranger.
╖ Some enchancements in the filebox and in the slider.
╖ PS3M now frees ALL buffers needed for playing.
╖ LhA, Zip & Gzip compatibility.
╖ Added a clock (titlebar info).
v1.15 (5.8.1994)
----------------
╖ A couple of fixes here and there.
╖ Next/prev working fine again.
╖ Added a key for random play.
v1.16 (12.8.1994)
-----------------
╖ LhA/Zip/Gzip filehandling much better.
╖ A bug in samplenamesroutine fixed.
╖ PS3M priority reduced from 2 to 0.
╖ PS3M system friendly mode end-detect (S3M, FTM, MOD, MTM).
╖ Show free memory in titlebar.
╖ SoundMon v2.0 bug fixed.
╖ Stringgadgets' fontbug corrected (hopefully).
╖ Volumeboost controlled with propgadget.
╖ Scope priority from -5 to -30.
╖ Priority selector in prefs (for mainprogram).
╖ Startup errormessages.
╖ Memory usage reduced 5kB compared to v1.15
v1.17 (?.8.1994)
----------------
╖ Some fixes.
╖ Numerous bugs seemed to appear in v1.16. Hunt in progress..
Removed one in TFMX 7ch interface.
SoundMon v2.0 bug removed (again, was not fixed in v1.16).
v1.18 (22.8.1994)
-----------------
╖ Bughunt continues.
Several removed and among them one that possibly scrambled memory.
╖ Non-existent doublebuffering changed to fade volume.
v1.19 (?.?.1994)
----------------
╖ No volume fading when tune ends while using randomplay.
╖ PS3M priority changed again, this time to +1.
╖ Windowcoloring.
╖ PT replayer still had bugs left: vibrato & tremolo were too
strong! Fixed.
╖ No more H.P.Lovecraft.
v1.20 (2.9.1994)
----------------
╖ LhA/Zip/Gzip enchanced and some bugs removed.
╖ New backround color looked wrong on 8+ color screens. Fixd.
v1.23 (?.9.1994)
----------------
╖ SID support! Now you can listen all those cool C64 tunes!
╖ Samplenames => Moduleinfo. Now also info about SID modules.
╖ Open moduleinfo window also by pressing left mousebutton on the
name/type box or pressing 'I'.
v1.25 (13.9.1994)
-----------------
╖ Major changes in LhA/Zip/Gzip interface. Should work OK, finally.
The version in v1.15 onwards really acted strange!
╖ Stereoscope for PS3M, might not work very well though.
v1.28 (21.10.1994)
------------------
╖ The timer will wrap properly now.
╖ All replayers excluding PT and PS3M didn't work on 68040 because
of the copyback-cache. Should work OK now.
╖ Timer and pos/len are now shown at the same time.
╖ Moduleinfo reorganized. All PT samplenames in same window.
v1.30 (7.11.1994)
-----------------
╖ Fixed a very silly bug (changed the volume depending on the size
of the module being played!).
╖ New scope: SID.
╖ Improved Shell interface. Allows HiP to be more a commandline
moduleplayer.
╖ Time, pos/len and song number shown at the same time.
╖ The timer uses DateStamp().
╖ Requesters use the same font as the mainprogram.
╖ Some gfx bugs fixed.
╖ NEW VERSION OF THE PS3M! Mixingroutines for 68000 and 68020++.
Faster and more beautiful! Stop/cont/fastforward/rewind etc.
╖ Two more scopes for PS3M.
╖ Removed The Holy Noise.
╖ The Player version increased to v6.1A.
╖ When a module jumps backwards it is considered ended. Works with
PS3M and ProTracker.
v1.31 (12.11.1994)
------------------
╖ Several not so serious bugs fixed.
╖ After playing TFMX 7c tunes, programs using lev4 interrupt crashed
(like PS3M). Fixed.
╖ Some Prefs-window reorganization.
╖ Hippoicon by Tommi Lindstr÷m (Hawk/Hippopotamus Design).
v1.32 (18.11.1994)
------------------
╖ Pressing "Play" on the module currently being played caused
HiP to load next module (in list-playmodes).
╖ Module program directory saved in the prefsfile.
╖ Samplenameviewer works OK, no more garbage.
╖ Some PS3M bugs removed (stop-eject=no guru).
╖ ProTracker replayer can cope with a bit mutated modules too.
v1.33 (7.12.-94)
----------------
╖ Unofficial release...
v1.34 (11.12.-94)
-----------------
╖ Numerous fixes here and there.
╖ BPSoundMon enchancements: position/length, ffwd and rew, volume.
╖ More info in the infowindow.
╖ Number of subsongs checked: TFMX, TFMX 7c, Fred.
╖ When there's no "moduleinfo" available and the left mousebutton is
pressed on the left third of the textbox, infowindow will be opened.
╖ TFMX & TFMX 7c enchancements: position/length, ffwd and rew,
songend.
╖ Sometimes PS3M didn't start to play in killermode (my fault). Fixed.
╖ New design in the main window.
╖ Amount of files showed in the main window now selectable.
╖ Amount of songs (if available) shown after current songnumber.
╖ Some samplenameviewer bugs removed.
╖ IMPORTANT: Versions 1.30 to 1.33 didn't work on A500 or A600,
in other words on 68000. This version should work OK.
v1.35 (2.1.-95)
---------------
╖ Samplenameviewer still had a bug! Vanquished it!
╖ New scope for ProTracker: patternscope.
╖ Prefs: doubleclick, center name, some gfx changes,
multiple choice requesters with RMB.
╖ Stringgadgets in prefs will only accept fonts of size 8 or
smaller. No more trash.
╖ Aargh! Stupid LhA command mistake corrected! %s" -> "%s" !
╖ ProTracker replayer caused Enforcer hits! Fixed...
╖ Module name shown in the title of the samplenamewindow.
╖ Removed that little window when opening LhA, zip and gzip files.
╖ ProTracker: Songnumber not shown and NS/PS gadgets disabled
when there's only one song in module (most modules have only
one song).
╖ Removed the SID scope. It was "illegal" as it used some
undocumented functions in the playsid.library.
╖ Removed the PT fastram player. It was terrible.
╖ TWO SERIOUS BUGS REMOVED! When playing ProTracker modules
(or alike), my PT replayer and Guru's PS3M sometimes
scrambled system's memorylist! Aargh (part 2)!!
╖ Found more bugs in the PT replayer. I have been using it for
two years and there's still bugs left... Some effect commands
weren't played correctly while notedelaying (EEx). Fxd.
╖ Player v6.1A: Stop/cont working again.
v1.38 (9.1.1995)
----------------
╖ Oktalyzer modules played wrong on non-50Hz screens. Fixed.
╖ One TFMX 7c interface bug removed.
╖ Added startup play.
╖ Added load & play module or program by pressing the function
keys.
╖ No need to have PRG in front of the filename anymore when loading
programs via commandline.
╖ Programs can be loaded with New/Play.
╖ File & directoryrequesters use the font defined in system's prefs.
╖ Fixed one bug in PS3M (divide by zero-exception when playing S3Ms).
v1.39 (12.1.1995)
-----------------
╖ Quick bug fix! Damn I'm stupid! v1.38 doesn't work on 68000,
this version does.
╖ The main window is now an AppWindow! Now you can drop modules and
module programs on the window and they get loaded and played.
This feature is for kick2.0+ only.
v1.40 (21.1.1995)
-----------------
╖ The terrible fastramplayer is back. Works somehow.
╖ Prefs: Show module name in titlebar, set playing time (timeout).
╖ Works better with arc-handler (ARC:).
╖ Killed a killer bug in the PT replayer.
╖ LhA enchancement: Load both TFMX mdat and smpl files from one
archive.
v2.00 (19.3.1995)
-----------------
* ARexx support
* Public screen support
* Keyboard control changes: you can use the keys without activating
the window first by pressing lamiga-lshift-control-<key>.
* New PS3M: support for Fasttracker 2 (XM) modules.
* Improved outlook.
* Patched playsid.library so that it's possible to play SID-tunes
also on kick1.2/1.3.
* Prefs: continue on error, hotkeys, nasty audio, doublebuffering,
program dir selector.
* Main window: move, insert, sort (hidden under insert)
+ Timeout has now two modes.
+ You can 'Add', 'New' and 'In' directories.
+ New The Player v6.1a replayer.
+ PT replayer causes no serialstops.
+ Command line: HIDE, QUIT.
+ Prefs: PS3M volume boost has immediate effect on music.
+ Included some support progs.
╖ PSID-files are loaded in public mem if possible.
╖ HiP can be hidden with lamiga-lshift-control+h.
╖ Key for toggling current scope.
╖ Uses less CPU than v1.40 when not playing.
╖ Filebox routines optimized & jump scroll with shifts.
╖ New algorithmic random generator (thanks Thomas!).
╖ If PT replayer is set as 'Fastram', modules smaller than
the replayer's chip buffers (256kB) will be loaded in chipram.. :)
╖ Recognizes .Lha .lHa .lHA like suffixes too.
╖ Only 8 channel Oktalyzer-tunes are loaded in fast ram.
╖ Faster gadget disabling/enabling (OffGadget() was sloooow).
╖ Fixed and enforcer hit when toggling prefs window.
╖ Bug fix in the doc: the player table had some wrong info.
╖ General good stuff and nice things.
v2.05 (3.5.1995)
----------------
* Some fixes and improvements here and there.
* Keyboard: K/L swapped back with ARROW LEFT/ARROW RIGHT.
Added lot's of functions to number pad.
* MED: multisong support, song position/song length, forward,
rewind, songend. Also no lib-error bug removed.
* New PT FAST RAM replayer which uses only 1024 bytes of CHIP RAM.
* Replaced GZip support with LZX.
* New music formats: Mark II, Maniacs of Noise, David Whittaker,
BP SoundMon v3.0 (v2.2?).
* Prefs: VBlank timing selector, switch for scope bars.
- Added zoom-gadget (kick2.0+).
- Directories are added recursively (kick2.0+).
- Fix: PS3M with killer mode caused crashes (my fault).
+ Added Humble mode for PS3M: priority = -3.
+ PS3M mixing buffer size can be as high as 64kB.
- Fix: randomgenerator bugged heavily (jammed the machine).
- Fix: PT replayer patterndelay + volslide.
- Double buffering: if not enough memory, dump current module and
try again.
- When adding modules via AppWindow or commandline they are
added to the end of the list, instead of first clearing the list
and then adding.
- Filter status saved in prefs file. Wasn't saved in prev. versions!
- File selection bar is always kept visible.
- Better init error handling.
- The sort routine is six times faster than before.
- Priority affects all processes excluding HippoScope.
- Windows adapt with different border sizes (works with sysihack).
- Titlebar info: clock and free mem shown at the same time.
- Keys works from prefs window too.
- A new icon by Cyclone.
v2.06 (19.5.1995)
-----------------
- This version wasn't actually released.
* External player group.
+ Selectable 8x8 pixel font (kick2.0+).
+ Title of the sample name window now contains name, comment and size.
+ Timing is done with CIAA timer. Serialstops should finally
be gone now..
- Hide had a big bug! Terminated it. (Hi Yolk! (I'm an idiot))
- Fixed a bug in HiP-script (LZX extraction).
- Pressing 'Use' in prefs window will also change the scope.
- Fade volume on exit.
- A new icon by Roman Patzner.
- Fixed a bug in ZIP (ARexx).
- Some PS3M bugs removed.
- Some fixes...
******************************************************************************
* *** Hellos *** *
******************************************************************************
Jarno Paananen (Guru/Sahara Surfers)
- Hi my friend! Thanks very much for the PS3M and everything else!
Nico Franτois
- Thanks for the great reqtools.library!
Ron Birk & Per Hσkan Sundell
- Thanks for making almost perfect SID-emulation.
Thanks to those who drew the icons:
Tommi Lindstr÷m - The original 4-color face portrait.
Richard Harris - The MWB icon with a hippo lurking.
cYClone/nEW-dEAL^PSD PC - The colorful MWB icon.
Roman Patzner - The smaller & nicer 4-color face portrait.
Henryk Richter (Buggs/Defect)
- Thanks for the SoundMon v3.0 replayer.
Special hellos:
---------------
Agust Arni Jonsson (Nemesis1), Paul Petershagen, Thomas Schuerger, Gavin
Hamill, Morten Wilken Rasmussen, Aki Laukkanen
Hellos:
-------
Peter Kunath, Fredrik Andersson, Arto Ikola, Kari JΣrvi÷, Zdenek Kabelac,
Bert Dorhout, Gunther Nikl, Ville Ranki, Andy Church, Peter Reunanen,
Stelios, Mikko Karvonen, Markus Stenberg, Steve Nordquist, Fred Brooker
Thanks to all the ones who have sent me registrations, bug reports &
suggestions!
******************************************************************************
* *** About *** *
******************************************************************************
The program was made by using Asm-Ones v1.06/1.09/1.25. Pure assembler
100%+++. Sourcecode length without any includes or play routines = 290kB.
Registrations, bug reports, comments & suggestions, module swapping and
C-64 wares are welcome!
Kari-Pekka Koljonen
Torikatu 31
40900 SΣynΣtsalo
Finland
E-mail: kpkoljon@kauhajoki.fi
kpkoljon@freenet.hut.fi (redirected)
IRC: K-P
Finns phone: 941-3742699